package com.soft.javase.ch10.functional;

/**
 * @author wangzhisen
 * @Desc TODO
 * @date 2025/5/7
 *
 * 函数式接口
 * 1.interface接口 ，其次有且只能有一个待实现的抽象方法，允许有default默认方法的存在
 * 2.@FunctionalInterface 编译期检测是否符合函数式接口的规范，类似于@Override
 * 3.建议加上注解@FunctionalInterface ， 以避免同事接口改造升级，而带来的简化出现问题
 */
public class FunctionalDemo1 {

    public static void main(String[] args) {

        Test test = new Test();
        test.method(()-> System.out.println("Hello!"));
    }
}

@FunctionalInterface
interface MyFunctionalInterface1{
    void test();

    default void b(){}
}
class Test{
    public void method(MyFunctionalInterface1 my){
        my.test();
    }
}
